import axios from 'axios'
import {Toast} from "vant";
import router from "@/router";
export function request (config) {
  const instance = axios.create({
    baseURL: 'http://localhost/api',
      // baseURL: 'http://misscl.online/api',
    withCredentials: true
  })

  // 添加请求拦截器
  instance.interceptors.request.use(
      function (config) {
          // 在发送请求之前做些什么
          var token = localStorage.getItem('token');
          if(token !== '' || token !== null){
              config.headers.authorization = localStorage.getItem('token')
          }
          return config
      },
      function (error) {
        // 对请求错误做些什么
        //    return Toast("请求繁忙")
          console.log("请求错误做")
          this.$router.push('/login')
        return Promise.reject(error)
      }
  )


  // // 添加请求拦截器
  // instance.interceptors.request.use(
  //   function (config) {
  //     // 在发送请求之前做些什么
  //     config.headers.Authorization = localStorage.getItem('token')
  //     return config
  //   },
  //   function (error) {
  //     // 对请求错误做些什么
  //     return Promise.reject(error)
  //   }
  // )

  // // 添加响应拦截器
  instance.interceptors.response.use(
    function (response) {
      // 对响应数据做点什么
      return response
    },
    function (error) {
      // 对响应错误做点什么
      // return Promise.reject(error)
        const {status,data} = error.response;
        if(status===500){
            Toast({
                message:data.message||"服务器错误",
                type:'error',
                duration:2*1000
            })
        }else if(status===403){
            Toast({
                message:data.message||'拒绝访问',
                type:'error',
                duration:2*1000
            })
        }else if(status===404){
            Toast({
                message:data.message||'请求错误,未找到该资源',
                type:'error',
                duration:2*1000
            })
        }else if(status===405){
            Toast({
                message:data.message||'请求方法未允许',
                type:'error',
                duration:2*1000
            })
        }else if(status===408){
            Toast({
                message:data.message||'请求超时',
                type:'error',
                duration:2*1000
            })
        }else if(status===503){
            Toast({
                message:data.message||'服务不可用',
                type:'error',
                duration:2*1000
            })
                }
        // localStorage.setItem("token","")
        // return router.push("/login")
    }
  )

  return instance(config)
}

export default axios.create({
  withCredentials: true
})
